package com.smedi.ismedi.organization.core.infrastructure.constant;


import com.smedi.ismedi.web.starter.exception.BasicError;
import com.smedi.ismedi.web.starter.exception.ErrorItem;

/**
 * 错误消息提示
 */
public class CustomError extends BasicError {
    public static final ErrorItem HR_ORGANIZATION_ID_MISS = new ErrorItem(1, "企业组织id缺失！");

    public static final ErrorItem PARENT_ORG_NOT_EXIST = new ErrorItem(2, "父节点组织系统中不存在！");

    public static final ErrorItem PARENT_ORG_MYSELF_WRONG = new ErrorItem(3, "当前组织不能自己的父节点组织！");

    public static final ErrorItem ONLY_COMPANY_CAN_BE_ROOT = new ErrorItem(4, "只有公司类型组织才允许成为根节点！");

    public static final ErrorItem PARENT_ORG_CANNOT_BE_SON_NODE = new ErrorItem(5, "当前组织下的子组织不能成为父节点组织！");

    public static final ErrorItem EXIST_ORG_ROOT = new ErrorItem(6, "已存在组织根节点！");

    public static final ErrorItem ORG_DELETE_FAILED_BY_HAS_CHILDREN = new ErrorItem(7, "当前组织下有子组织！");

    /**
     * 行政组织，公司领导下级不可新建组织
     */
    public static final ErrorItem HR_ORG_CREATE_ERROR1 = new ErrorItem(8, "公司领导下级不可新建组织！");

    /**
     * 行政组织，公司管理组织下级仅可新建下级部门
     */
    public static final ErrorItem HR_ORG_CREATE_ERROR2 = new ErrorItem(9, "公司管理组织下级仅可新建下级部门！");

    /**
     * 行政组织，项目管理组织下级仅可新建下级部门
     */
    public static final ErrorItem HR_ORG_CREATE_ERROR3 = new ErrorItem(10, "项目管理组织下级仅可新建下级部门！");

    /**
     * 行政组织，下级部门下级仅可新建下级部门
     */
    public static final ErrorItem HR_ORG_CREATE_ERROR4 = new ErrorItem(11, "下级部门下级仅可新建下级部门！");

    public static final ErrorItem ONLY_PROJECT_MANAGE_ORG_WITH_PROJECT = new ErrorItem(12, "项目管理组织不可新建项目！");

    public static final ErrorItem PROJECT_NOT_AVAILABLE = new ErrorItem(13, "项目不可用或不存在！");

    /**
     * 项目管理组织，本单位下级仅可新增部门
     */
    public static final ErrorItem PROJECT_ORG_CREATE_ERROR1 = new ErrorItem(14, "本单位下级仅可新建部门！");

    /**
     * 项目管理组织，外单位下级仅可新增部门
     */
    public static final ErrorItem PROJECT_ORG_CREATE_ERROR2 = new ErrorItem(15, "外单位下级仅可新建部门！");

    /**
     * 项目管理组织，部门下级仅可新增部门
     */
    public static final ErrorItem PROJECT_ORG_CREATE_ERROR3 = new ErrorItem(16, "部门下级仅可新建部门！");

    public static final ErrorItem PROJECT_ID_MISS = new ErrorItem(17, "项目id缺失！");

    public static final ErrorItem PARENT_ORG_NOT_BELONG_PROJECT = new ErrorItem(18, "父组织和当前项目不匹配！");

    public static final ErrorItem SPECIAL_TYPE_MISS = new ErrorItem(19, "组织特性信息缺失！");

    public static final ErrorItem SPECIAL_TYPE_ERROR = new ErrorItem(20, "不允许维护组织特性！");

    public static final ErrorItem ORG_HAS_ASSIGNMENT = new ErrorItem(21, "组织下存在人员分配！");

    public static final ErrorItem ORG_FULL_NAME_DUPLICATE = new ErrorItem(22, "组织全称重复！");

    public static final ErrorItem ORG_SHORT_NAME_DUPLICATE = new ErrorItem(23, "组织简称重复！");

    public static final ErrorItem ORG_CODE_DUPLICATE = new ErrorItem(24, "组织编码重复！");

    public static final ErrorItem HR_ORG_HAS_PROJECT = new ErrorItem(25, "组织下存在项目信息！");

    public static final ErrorItem PROJECT_ORG_TYPE_ERROR_BY_BID_SECTION = new ErrorItem(26, "当前组织被用于标段配置，组织类型错误，只允许为本单位或者外单位！");

    public static final ErrorItem ORG_MAX_LEVEL_ERROR = new ErrorItem(27, "超过最大组织层级限制！");

    public static final ErrorItem PROJECT_ORGANIZATION_HAS_ASSIGNMENT = new ErrorItem(28, "项目组织已有分配记录！");

    public static final ErrorItem HR_ORGANIZATION_NOT_EXIST = new ErrorItem(29, "企业组织不存在！");

    public static final ErrorItem PROJECT_ORGANIZATION_NOT_EXIST = new ErrorItem(30, "项目组织不存在！");

    public static final ErrorItem EXCHANGE_NODE_MISS_ONE_NODE = new ErrorItem(31, "组织节点交换顺序缺失一个节点！");

    public static final ErrorItem DISPLAY_ORDER_MISS = new ErrorItem(32, "组织排序缺失！");
}
